// 负责管理所有的自定义指令

// 自定义指令注册方式
// Vue.directive('指令名称', {
//   // 会在当前指令作用的dom元素 插入之后执行
//   // options 里面是指令的表达式
//   inserted: function(dom, options) {

//   }
// })

// 只负责导出指令对象
// 变量名称就是指令名称
export const imageerror = {
  // 指令内容
  // 指令作用在图片上 dom是图片对象
  // inserted 执行的时候 此时 在src赋值之后
  inserted(dom, options) {
    dom.src = dom.src || options.value
    // 图片有地址 但是地址加载图片失败会触发一个onerror事件
    dom.onerror = function() {
      // 监听onerror事件
      // options.value就是指令传过来的值
      dom.src = options.value // 当图片异常时接收指令传过来的值
    }
  },
  // 在image赋值之后执行
  componentUpdated(dom, options) {
    dom.src = dom.src || options.value
  }
}
